﻿using System;
//4.11.7 var与dynamic
// var和dynamic类型表面上是相似的，但是它们实际上是有区别的：
// var由编译器确定类型。
// dynamic由运行时确定类型。

namespace _133_动态绑定_var与dynamic
{
    class Program
    {
        static void Main(string[] args)
        {
            dynamic x = "hello"; //静态类型是dynamic，运行时类型是string
            var y = "hello"; // 静态类型是string，运行时类型是string
            //int i = x; // 运行时错误
            //int j = y; // 编译时错误

            //一个由var声明的变量的静态类型可以是dynamic：
            dynamic xx = "hello";
            var yy = xx; // y的静态类型是dynamic
            int zz = yy; // 运行时错误
        }
    }
}
